@Lemon
3年前 提问
1个回答

c语言冒泡排序

delay
3年前

c语言冒泡排序法:也叫升序排序法,在要排序的一组数中,对当前还未排好序的范围内的全部数,自上 而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较 小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要 求相反时,就将它们互换。

代码如下:

#include<stdio.h>

void main(){
    int i, j, t, a[10];    //定义变量及数组为基本整型
    printf("Please input numbers: ");
    for (i = 1; i < 10; i++)
        scanf("%d", &a[i]);    //从键盘输入要排序的数组
    }
    for(i=0;i<10;i++){
        for(j=i+1;j<=9;j++){
            if(a[i]>a[j]){  //如果后一个数比前一个数大利用中间变量t实现俩值互换
                t=a[i];
                a[i]=a[j];
                a[j]=t;
            }
        }
    }

    printf("Please output numbers: ");
    for(i=0;i<=9;i++){
        printf("%-3d",a[i]);  //将排好序的数组输出
    }
    printf("\n");
    }